drop table if exists t_user;

/*==============================================================*/
/* Table: t_user                                                */
/*==============================================================*/
create table t_user
(
   login_id             varchar(20) not null,
   login_pwd            varchar(20),
   login_avalible       int not null,
   stf_id               int not null,
   is_admin             int not null,
   primary key (login_id)
);
drop trigger tri_login_session_ins;

drop index idx_login_session_token on t_login_session;

drop table if exists t_login_session;

/*==============================================================*/
/* Table: t_login_session                                       */
/*==============================================================*/
create table t_login_session
(
   ses_id               int not null auto_increment,
   ses_token            varchar(100) not null,
   stf_id               varchar(20) not null,
   login_id             varchar(20),
   login_time           datetime,
   last_vist_time       datetime,
   is_active            int,
   primary key (ses_id)
);

/*==============================================================*/
/* Index: idx_login_session_token                               */
/*==============================================================*/
create unique index idx_login_session_token on t_login_session
(
   ses_token
);

delimiter | 
create trigger tri_login_session_ins before insert
on t_login_session for each row
begin
    set new.login_id=(select t.login_id from t_staff t where t.stf_id=new.stf_id);
end|